<?php

declare(strict_types=1);

namespace App\Services;

use InvalidArgumentException;

class ProfileService extends BaseService
{
    /**
     * Obtiene una instancia del servicio de usuarios.
     */
    private function userService(): UserService
    {
        return new UserService($this->app());
    }

    /**
     * Modifica la información de la cuenta de un usuario.
     */
    public function update(string $userAuthId, array $data): void
    {
        $data['is_active'] = true;

        try {
            $this->userService()->update($userAuthId, $data);
        } catch (InvalidArgumentException $e) {
            throw new InvalidArgumentException('La información de modificación de la cuenta es incorrecta');
        }
    }
}
